My-library.info
Все категории

Графические интерфейсы пользователя Java - Тимур Сергеевич Машнин

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Графические интерфейсы пользователя Java - Тимур Сергеевич Машнин. Жанр: Программирование год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
Графические интерфейсы пользователя Java
Дата добавления:
14 январь 2023
Количество просмотров:
58
Читать онлайн
Графические интерфейсы пользователя Java - Тимур Сергеевич Машнин

Графические интерфейсы пользователя Java - Тимур Сергеевич Машнин краткое содержание

Графические интерфейсы пользователя Java - Тимур Сергеевич Машнин - описание и краткое содержание, автор Тимур Сергеевич Машнин, читайте бесплатно онлайн на сайте электронной библиотеки My-Library.Info

Эта книга для тех, кто уже знаком с языком программирования Java и хотел бы научиться разрабатывать настольные приложения Java с графическим интерфейсом пользователя.С этой книгой Вы познакомитесь с такими Java библиотеками графического интерфейса пользователя, как AWT, Swing, SWT/JFace и JavaFX.

Графические интерфейсы пользователя Java читать онлайн бесплатно

Графические интерфейсы пользователя Java - читать книгу онлайн бесплатно, автор Тимур Сергеевич Машнин
создания связывания данных с помощью мастера JFace Automating Databinding в окне Package Explorer перспективы Java среды Eclipse щелкнем правой кнопкой мышки на узле проекта, созданного с помощью мастера SWT/JFace Java Project, и в контекстном меню выберем команду New | Other | Java | Class и нажмем кнопку Next, введем имя пакета и имя класса и нажмем кнопку Finish.

В окне редактора исходного кода дополним код класса.

Теперь класс Data является JavaBeans-компонентом, представляющим данные приложения.

В окне Package Explorer щелкнем правой кнопкой мышки на узле класса Data и в контекстном меню выберем команду New | Other | WindowBuilder | SWT Designer | Databinding | JFace Automating Databinding и нажмем кнопку Next, в окне мастера выберем переключатель Shell и нажмем кнопку Next.

В поле Properties: выберем свойство data класса Data и нажмем кнопку Finish.

В результате будет создано окно Shell, включающее в себя текстовое поле, содержимое которого синхронизировано со свойством data класса Data.

Связывание данных данного SWT-приложения устанавливается с помощью создания объекта DataBindingContext, который отвечает за хранение информации обо всех связываниях данных приложения.

Связывание данных вносится в DataBindingContext-объект с помощью методов класса DataBindingContext:

Метод bindList – синхронизирует два списка java.util.List.

Метод bindSet – синхронизирует два набора java.util.Set.

Метод bindValue – синхронизирует два объекта.

В данном SWT-приложении применяется метод bindValue для синхронизации свойства Text-компонента со свойством JavaBeans-компонента.

При этом свойство Text-компонента и свойство JavaBeans-компонента обертываются в объекты IObservableValue, обеспечивающие отслеживание изменений значений свойств.

Обертывание свойства Text-компонента в IObservableValue-объект производится с помощью статического метода observeText класса-фабрики SWTObservables, а обертывание свойства JavaBeans-компонента – с помощью статического метода observeValue класса-фабрики PojoObservables.

В методе main данного SWT-приложения Shell-окно создается в специальном UI-потоке, для которого определен контекст доступа к IObservable-объектам, обеспечивающий уведомление IObservable-объектами своих слушателей.

Такой контекст представлен объектом Realm.

Для демонстрации связывания данных во вкладке Design WindowBuilder-редактора перенесем в Shell-окно элемент Button раздела Controls Palette-палитры и два раза щелкнем по нему мышкой – в результате будет сгенерирован код создания Button-компонента и присоединения к нему слушателя событий выбора компонента.

Дополним код обработчика событий компонента.

В выделенных строках кода изменяется значение свойства data объекта Data и вызывается метод, обновляющий DataBindingContext-контекст.

После запуска приложения выбором команды Run As | Java Application контекстного меню окна Package Explorer при нажатии кнопки окна приложения в текстовом поле появится значение свойства JavaBeans-компонента «Hello».

Для того чтобы в обработчике событий кнопки не обновлять DataBindingContext-контекст вызовом метода setData, изменим код класса Data и код метода initDataBindings.

Здесь мы добавляем слушателей свойства JavaBeans-компонента, и в его методе setData автоматически генерируем событие изменения значения свойства.

Здесь мы обертываем свойство JavaBeans-компонента.

Для создания связывания данных с помощью вкладки Bindings WindowBuilder-редактора во вкладке Design WindowBuilder-редактора перенесем в Shell-окно элемент Label раздела Controls Palette-палитры и перейдем на вкладку Bindings.

Во вкладке Bindings в поле Target выберем Label-компонент, в поле Properties – его свойство text. В поле Model кнопкой Widgets переключимся на компоненты и выберем Text-компонент, а в нижнем поле Properties – его свойство text и нажмем кнопку создания связывания.

В окне мастера Create Data Binding нажмем кнопку OK.

В результате метод initDataBindings дополнится кодом.

Здесь текст поля связывается с текстом Label-компонента.

Убедимся, что вызов метода initDataBindings производится после создания Label-компонента, и во вкладке Design WindowBuilder-редактора в области визуального редактирования нажмем на Label-компоненте правой кнопкой мышки и в контекстном меню выберем команду Horizontal alignment | Fill, гарантируя отображение текста метки.

Теперь после запуска приложения изменение текста в текстовом поле приведет к автоматическому изменению текста метки.

JFace-приложения

Для создания JFace-приложения

в окне Package Explorer нажмем правой кнопкой мышки на узле проекта, созданного с использованием мастера SWT/JFace Java Project, и в контекстном меню выберем команду New | Other | WindowBuilder | SWT Designer | JFace | ApplicationWindow, нажмем кнопку Next, введем имя пакета и имя класса и нажмем кнопку Finish.

В результате будет создан главный класс JFace-приложения, представляющий окно с заголовком и кнопками «свернуть», «развернуть» и «закрыть», расширяющий класс ApplicationWindow и имеющий публичный конструктор, статический метод main, внутренний метод createActions и переопределенные методы createContents, createMenuManager, createToolBarManager, createStatusLineManager, configureShell и getInitialSize.

В конструкторе главного класса JFace-приложения вызывается конструктор класса ApplicationWindow с аргументом Shell null, где Shell – это родительское окно для данного окна, таким образом определяя создаваемое окно главным окном приложения.

Далее вызываются методы createActions, addToolBar, addMenuBar и addStatusLine.

Метод createActions предназначен для создания JFace-действий, а методы addToolBar, addMenuBar и addStatusLine являются методами класса ApplicationWindow и отвечают за определение конфигурации окна, имеющего панель инструментов, панель меню и строку статуса.

Метод createContents переопределяет соответствующий метод класса Window, являющегося суперклассом класса ApplicationWindow.

Данный метод отвечает за создание и возврат содержимого окна, и в переопределенном методе createContents создается и возвращается SWT контейнер Composite.

При добавлении компонентов в ApplicationWindow-окно приложения, используя область визуального редактирования вкладки Design WindowBuilder-редактора, код создания компонентов добавляется в метод createContents и компоненты становятся дочерними компонентами возвращаемого методом Composite-контейнера.

Метод createMenuManager переопределяет соответствующий метод класса ApplicationWindow.

Данный метод отвечает за создание и возврат объекта MenuManager – объекта-помощника, упрощающего создание и обновление меню.

Заполнить меню элементами можно используя раздел JFace Actions Palette-палитры вкладки Design WindowBuilder-редактора, который появляется в Palette-палитре при создании JFace-приложения.

Для добавления элемента меню перенесем элемент New раздела JFace Actions Palette-палитры в область (Empty MenuManager) холста дизайнера.

В результате в методе createActions появится код создания экземпляра анонимного класса, расширяющего класс Action, а в методе createMenuManager произойдет добавление созданного Action-объекта в панель меню методом add интерфейса IContributionManager, который реализуется классом MenuManager и который обеспечивает общий протокол для добавления, удаления и поиска элементов панели меню, панели инструментов и строки статуса.

После добавления, Action-объект отображается в виде кнопки панели меню.

Для того чтобы нажатие добавленной кнопки панели меню вызвало требуемое действие необходимо переопределить метод run класса Action, вызываемый средой выполнения при возникновении SWT-события.

Метод createToolBarManager переопределяет соответствующий метод класса ApplicationWindow.

Данный метод отвечает за создание и возврат объекта ToolBarManager – объекта-помощника, упрощающего создание и обновление панели инструментов.

Заполнить панель инструментов элементами можно, используя раздел JFace Actions Palette-палитры вкладки Design WindowBuilder-редактора.

Для добавления элемента панели инструментов перенесем элемент New раздела JFace Actions Palette-палитры в область (Empty ToolBarManager) холста


Тимур Сергеевич Машнин читать все книги автора по порядку

Тимур Сергеевич Машнин - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки My-Library.Info.


Графические интерфейсы пользователя Java отзывы

Отзывы читателей о книге Графические интерфейсы пользователя Java, автор: Тимур Сергеевич Машнин. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.